Package-level declarations

Types

Link copied to clipboard
data class LlmMessageResponse(val message: Message, val textContent: String, val usage: Usage? = null)

Framework-agnostic result of a single LLM inference call. Represents the assistant's response which may include tool calls.

Link copied to clipboard
fun interface LlmMessageSender

Framework-agnostic interface for making a single LLM inference call.

Link copied to clipboard

Thrown when the tool loop exceeds the maximum number of iterations.

Link copied to clipboard
data class ToolCallResult(val toolName: String, val toolInput: String, val result: String, val resultObject: Any?)

Result of a tool call execution.

Link copied to clipboard
data class ToolInjectionContext(val conversationHistory: List<Message>, val currentTools: List<Tool>, val lastToolCall: ToolCallResult, val iterationCount: Int)

Context provided to injection strategies for decision-making.

Link copied to clipboard

Strategy for dynamically injecting tools during a conversation.

Link copied to clipboard
interface ToolLoop

Embabel's own tool execution loop.

Link copied to clipboard
data class ToolLoopResult<O>(val result: O, val conversationHistory: List<Message>, val totalIterations: Int, val injectedTools: List<Tool>, val totalUsage: Usage? = null)

Result of executing an Embabel tool loop.

Link copied to clipboard
class ToolNotFoundException(val requestedTool: String, val availableTools: List<String>) : RuntimeException

Thrown when the LLM requests a tool that is not available.